home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2010 May / Mac Life Ubuntu.iso / casper / filesystem.squashfs / usr / src / linux-headers-2.6.28-15 / arch / m68knommu / include / asm / nettel.h < prev    next >
Encoding:
C/C++ Source or Header  |  2008-12-24  |  3.1 KB  |  109 lines

  1. /****************************************************************************/
  2.  
  3. /*
  4.  *    nettel.h -- Lineo (formerly Moreton Bay) NETtel support.
  5.  *
  6.  *    (C) Copyright 1999-2000, Moreton Bay (www.moretonbay.com)
  7.  *     (C) Copyright 2000-2001, Lineo Inc. (www.lineo.com) 
  8.  *     (C) Copyright 2001-2002, SnapGear Inc., (www.snapgear.com) 
  9.  */
  10.  
  11. /****************************************************************************/
  12. #ifndef    nettel_h
  13. #define    nettel_h
  14. /****************************************************************************/
  15.  
  16.  
  17. /****************************************************************************/
  18. #ifdef CONFIG_NETtel
  19. /****************************************************************************/
  20.  
  21. #ifdef CONFIG_COLDFIRE
  22. #include <asm/coldfire.h>
  23. #include <asm/mcfsim.h>
  24. #endif
  25.  
  26. /*---------------------------------------------------------------------------*/
  27. #if defined(CONFIG_M5307)
  28. /*
  29.  *    NETtel/5307 based hardware first. DTR/DCD lines are wired to
  30.  *    GPIO lines. Most of the LED's are driver through a latch
  31.  *    connected to CS2.
  32.  */
  33. #define    MCFPP_DCD1    0x0001
  34. #define    MCFPP_DCD0    0x0002
  35. #define    MCFPP_DTR1    0x0004
  36. #define    MCFPP_DTR0    0x0008
  37.  
  38. #define    NETtel_LEDADDR    0x30400000
  39.  
  40. #ifndef __ASSEMBLY__
  41.  
  42. extern volatile unsigned short ppdata;
  43.  
  44. /*
  45.  *    These functions defined to give quasi generic access to the
  46.  *    PPIO bits used for DTR/DCD.
  47.  */
  48. static __inline__ unsigned int mcf_getppdata(void)
  49. {
  50.     volatile unsigned short *pp;
  51.     pp = (volatile unsigned short *) (MCF_MBAR + MCFSIM_PADAT);
  52.     return((unsigned int) *pp);
  53. }
  54.  
  55. static __inline__ void mcf_setppdata(unsigned int mask, unsigned int bits)
  56. {
  57.     volatile unsigned short *pp;
  58.     pp = (volatile unsigned short *) (MCF_MBAR + MCFSIM_PADAT);
  59.     ppdata = (ppdata & ~mask) | bits;
  60.     *pp = ppdata;
  61. }
  62. #endif
  63.  
  64. /*---------------------------------------------------------------------------*/
  65. #elif defined(CONFIG_M5206e)
  66. /*
  67.  *    NETtel/5206e based hardware has leds on latch on CS3.
  68.  *    No support modem for lines??
  69.  */
  70. #define    NETtel_LEDADDR    0x50000000
  71.  
  72. /*---------------------------------------------------------------------------*/
  73. #elif defined(CONFIG_M5272)
  74. /*
  75.  *    NETtel/5272 based hardware. DTR/DCD lines are wired to GPB lines.
  76.  */
  77. #define    MCFPP_DCD0    0x0080
  78. #define    MCFPP_DCD1    0x0000        /* Port 1 no DCD support */
  79. #define    MCFPP_DTR0    0x0040
  80. #define    MCFPP_DTR1    0x0000        /* Port 1 no DTR support */
  81.  
  82. #ifndef __ASSEMBLY__
  83. /*
  84.  *    These functions defined to give quasi generic access to the
  85.  *    PPIO bits used for DTR/DCD.
  86.  */
  87. static __inline__ unsigned int mcf_getppdata(void)
  88. {
  89.     volatile unsigned short *pp;
  90.     pp = (volatile unsigned short *) (MCF_MBAR + MCFSIM_PBDAT);
  91.     return((unsigned int) *pp);
  92. }
  93.  
  94. static __inline__ void mcf_setppdata(unsigned int mask, unsigned int bits)
  95. {
  96.     volatile unsigned short *pp;
  97.     pp = (volatile unsigned short *) (MCF_MBAR + MCFSIM_PBDAT);
  98.     *pp = (*pp & ~mask) | bits;
  99. }
  100. #endif
  101.  
  102. #endif
  103. /*---------------------------------------------------------------------------*/
  104.  
  105. /****************************************************************************/
  106. #endif /* CONFIG_NETtel */
  107. /****************************************************************************/
  108. #endif    /* nettel_h */
  109.